package de.sinnlosimnetz.forum.ws.server;

import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlSchemaType;
import javax.xml.bind.annotation.XmlType;
import javax.xml.datatype.XMLGregorianCalendar;

/**
 * <p>
 * Java class for Thread complex type.
 * <p>
 * The following schema fragment specifies the expected content contained within
 * this class.
 * 
 * <pre>
 * &lt;complexType name="Thread">
 *   &lt;complexContent>
 *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
 *       &lt;sequence>
 *         &lt;element name="name" type="{http://www.w3.org/2001/XMLSchema}string"/>
 *         &lt;element name="lastPosted" type="{http://www.w3.org/2001/XMLSchema}dateTime"/>
 *         &lt;element name="lastUser" type="{http://sinnlosimnetz.de/ForumState/}User"/>
 *         &lt;element name="postCount" type="{http://www.w3.org/2001/XMLSchema}int"/>
 *         &lt;element name="lastPost" type="{http://sinnlosimnetz.de/ForumState/}Post"/>
 *       &lt;/sequence>
 *     &lt;/restriction>
 *   &lt;/complexContent>
 * &lt;/complexType>
 * </pre>
 */
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "Thread", propOrder = { "name", "lastPosted", "lastUser",
		"postCount", "lastPost" })
public class Thread
{

	@XmlElement(required = true)
	protected String name;
	@XmlElement(required = true)
	@XmlSchemaType(name = "dateTime")
	protected XMLGregorianCalendar lastPosted;
	@XmlElement(required = true)
	protected User lastUser;
	protected int postCount;
	@XmlElement(required = true)
	protected Post lastPost;

	/**
	 * Gets the value of the name property.
	 * 
	 * @return possible object is {@link String }
	 */
	public String getName()
	{
		return name;
	}

	/**
	 * Sets the value of the name property.
	 * 
	 * @param value allowed object is {@link String }
	 */
	public void setName(String value)
	{
		this.name = value;
	}

	/**
	 * Gets the value of the lastPosted property.
	 * 
	 * @return possible object is {@link XMLGregorianCalendar }
	 */
	public XMLGregorianCalendar getLastPosted()
	{
		return lastPosted;
	}

	/**
	 * Sets the value of the lastPosted property.
	 * 
	 * @param value allowed object is {@link XMLGregorianCalendar }
	 */
	public void setLastPosted(XMLGregorianCalendar value)
	{
		this.lastPosted = value;
	}

	/**
	 * Gets the value of the lastUser property.
	 * 
	 * @return possible object is {@link User }
	 */
	public User getLastUser()
	{
		return lastUser;
	}

	/**
	 * Sets the value of the lastUser property.
	 * 
	 * @param value allowed object is {@link User }
	 */
	public void setLastUser(User value)
	{
		this.lastUser = value;
	}

	/**
	 * Gets the value of the postCount property.
	 */
	public int getPostCount()
	{
		return postCount;
	}

	/**
	 * Sets the value of the postCount property.
	 */
	public void setPostCount(int value)
	{
		this.postCount = value;
	}

	/**
	 * Gets the value of the lastPost property.
	 * 
	 * @return possible object is {@link Post }
	 */
	public Post getLastPost()
	{
		return lastPost;
	}

	/**
	 * Sets the value of the lastPost property.
	 * 
	 * @param value allowed object is {@link Post }
	 */
	public void setLastPost(Post value)
	{
		this.lastPost = value;
	}

}
